package br.com.ads.sgse.managedBean;

import java.util.List;

import javax.annotation.PostConstruct;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.ViewScoped;

import br.com.ads.dao.DAO;
import br.com.ads.sgse.entity.Bairro;

@ManagedBean(name="bairroBean")
@ViewScoped
public class BairroBean {
	
	private Bairro bairro = new Bairro();
	private List<Bairro> bairros;
	private DAO<Bairro> dao = new DAO<Bairro>(Bairro.class);
	private String parameter;

	public String getParameter() {return parameter;}
	public void setParameter(String parameter) {this.parameter = parameter;}

	
	/** ACTIONS **/

	@SuppressWarnings("unused")
	@PostConstruct
	private void init() {
		getAllBairros();
	}

	public String salvar() {
		try {
			if (bairro.getId() == null) {
				dao.adiciona(bairro);
			} else {
				dao.atualiza(bairro);
			}

			getAllBairros();
			bairro = new Bairro();
		} catch (Exception e) {
			e.printStackTrace();
		}
		return null;
	}

	public void remove() {
		try {
			dao.remove(bairro);
			getAllBairros();
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

	public void getAllBairros() {
		try {
			setBairros(dao.listaTodos());
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
	public Bairro getBairro() {
		return bairro;
	}
	public void setBairro(Bairro bairro) {
		this.bairro = bairro;
	}
	public List<Bairro> getBairros() {
		return bairros;
	}
	public void setBairros(List<Bairro> bairros) {
		this.bairros = bairros;
	}

}
